﻿using System;
using System.Numerics;

class Program
{
    static void Main()
    {
        Console.WriteLine("类型\t\t大小（字节）\t最小值\t\t\t\t\t最大值");
        Console.WriteLine("---------------------------------------------------------------");

        // sbyte
        Console.WriteLine($"sbyte\t\t{sizeof(sbyte)}\t\t{sbyte.MinValue}\t\t{sbyte.MaxValue}");

        // byte
        Console.WriteLine($"byte\t\t{sizeof(byte)}\t\t{byte.MinValue}\t\t{byte.MaxValue}");

        // short
        Console.WriteLine($"short\t\t{sizeof(short)}\t\t{short.MinValue}\t\t{short.MaxValue}");

        // ushort
        Console.WriteLine($"ushort\t\t{sizeof(ushort)}\t\t{ushort.MinValue}\t\t{ushort.MaxValue}");

        // int
        Console.WriteLine($"int\t\t{sizeof(int)}\t\t{int.MinValue}\t\t{int.MaxValue}");

        // uint
        Console.WriteLine($"uint\t\t{sizeof(uint)}\t\t{uint.MinValue}\t\t{uint.MaxValue}");

        // long
        Console.WriteLine($"long\t\t{sizeof(long)}\t\t{long.MinValue}\t\t{long.MaxValue}");

        // ulong
        Console.WriteLine($"ulong\t\t{sizeof(ulong)}\t\t{ulong.MinValue}\t\t{ulong.MaxValue}");

        // float
        Console.WriteLine($"float\t\t{sizeof(float)}\t\t{float.MinValue}\t\t{float.MaxValue}");

        // double
        Console.WriteLine($"double\t\t{sizeof(double)}\t\t{double.MinValue}\t\t{double.MaxValue}");

        // decimal
        Console.WriteLine($"decimal\t\t{sizeof(decimal)}\t\t{decimal.MinValue}\t\t{decimal.MaxValue}");
    }
}